1. Field of the Invention
The present invention relates to an image generating apparatus for and an image generating method of generating a three-dimensional (3D) image on the basis of three-dimensional coordinate information, which is applied to a navigation system or the like, and a computer program to perform the image generating method.
2. Description of the Related Art
Recently, the research development of an electronic control for controlling a drive of a car and the spread of a navigation system for supporting a drive are remarkable. In general, the navigation system is basically designed so as to have various databases and to display map information, current position information, various guidance information, etc. on a display unit. Moreover, such a navigation system is typically designed so as to search for a drive route in accordance with an input condition. It is further designed so as to display the searched drive route and a current position based on a GPS (Global Positioning System) measurement or a self-contained measurement on a map and carry out guidance (navigation) to a destination.
Moreover, in some types of navigation systems, a view on a front side from a currently driving point in addition to the drive route is displayed on a display unit. In addition, an indication of a driving lane, a direction to be curved at a crossing, a distance to a crossing, a distance to a destination, an arrival expectation time and the like are displayed. In such navigation systems, the forward view is displayed as a 3D image in perspective, which is a technique for drawing a 3D image on a plane on the basis of view point of a viewer.
Furthermore, some types of navigation systems is designated to change the forward view displayed as a 3D image according to an advance of a car in order to reproduce the change of the actual view that a driver watches in the car through the front window of the car while driving.
By the way, in order to display a 3D image that continuously changes, it is required to calculate enormous map data containing three-dimensional coordinate information at a high speed, input the data obtained by calculating to a drawing device one after another, and generate many 3D images in a shot time. In response to such a requirement, the technique that a single sequence of data is generated by mixing drawing object information indicating objects to be drawn such as a road, a building and so on and the coordinate transformation information indicating a view point, a field of view, a light source and so on, and a 3D image is generated at a time by using the single sequence of data. For example, the display list of OpenGL developed by Silicon Graphics Inc. has such a construction (Incidentally, OpenGL is a trademark of Silicon Graphics Inc.). However, the coordinate transformation information depends upon a type of drawing device. Because of this, if the coordinate transformation information is mixed with the drawing object information and the particular sequence of data is generated, the sequence of data cannot be used by a type of drawing device which cannot execute this sequence. Therefore, it is difficult to replace the drawing device. Moreover, in this case, there is a technique that the CPU carries out the so-called emulation on the sequence of data and converts it into executable sequence of data. However, since the emulation or conversion takes a long time, it is difficult to increase the speed of the image generating process.
In particular, the new type of drawing device is successively developed. If the current drawing device is replaced with the new type of drawing device, it is required to replace a device for generating the sequence of data for generating the 3D image. If the device for generating the sequence of data is an integrated device containing a function of generating the drawing object information, a function of generating the coordinate transformation information and a function of mixing these two kinds of information, it is required to replace all the functions, so that the replacement becomes on a large scale. Finally, the reconstruction of the whole of the apparatus is required. This prevents the apparatus from being efficiently or effectively generated by replacing only the drawing device. That is, the coordinate transformation that is the important element in the image generating process is operated as a state machine having a status therein. Hence, the function of the drawing device in this coordinate transformation can not cope with it only by replacing a single function, such as a library absorbing a typical device dependence.